As the value and use of information continues to increase, individuals and businesses seek additional ways to process and store information. One option available to users is information handling systems. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Certain types of information handling systems, e.g., distributed file systems, can employ different file representation schemes, which can vary based on the type of system. Some distributed file systems, such as a parallel virtual file system (PVFS), can employ striping to improve performance for large operations. Other systems can use a log or a journal based approach for speed and reliability. Still other systems can use plain, or regular, files due to the relative simplicity of such files.
Striping and parallel input/output (IO) operations work well for large file system operations. However, for small file system operations, striping increases the overhead and can result in relatively poor performance. For write intensive operations, log or journal based systems can result in relatively higher performance because these systems can use cache effectively and make writes sequentially. Read operations in such systems can incur more overhead.
Distributed file systems that support different file representation schemes can allow a user to manually make a decision on how a file should be stored. Other parameters, such as the stripe size, may be fixed or manually set by the user. These systems do not provide an automated way to make these decisions by the file system and not the user.
Accordingly, there is a need for a system and method of dynamically changing file representations.
The use of the same reference symbols in different drawings indicates similar or identical items.